home *** CD-ROM | disk | FTP | other *** search
/ Power DOS 1996 July / Power DOS - July 1996.iso / sound / c_labs / awe / adip.exe / ADIP02.ZIP / WINDOWS / SAMPLE / INDICES.H < prev    next >
C/C++ Source or Header  |  1994-07-08  |  3KB  |  102 lines

  1. /*
  2. ==============================================================================================================
  3.    Name:             INDICES.H
  4.  
  5.    Description:      Defines the required index to access effects type and variations and 
  6.                      synthesizer emulation of the AWEMAN.DLL.
  7.  
  8.    Purpose:          Header file meant for accessing effects type and variations of AWEMAN.DLL.
  9.  
  10.    Author:           E.W. Khor
  11.                      Copyright 1993,94 Creative Technology Ltd.
  12.  
  13.    Date:             version 1.0    -     27th Jan 1994
  14.  
  15.    Revision:
  16.  
  17. ==============================================================================================================
  18. */
  19.  
  20. #ifndef  _INDICES_H
  21. #define  _INDICES_H
  22.  
  23. enum SBANK {
  24.                GENERAL_MIDI = 0,
  25.                ROLAND_GS,
  26.                MT_32,
  27.                USER_CUSTOM_BANK
  28.             };
  29.  
  30. enum TYPEINDEX {
  31.                REVERB_CHORUS = 0,
  32.                QSOUND
  33.             };
  34.             
  35. enum SUBINDEX {
  36.                REVERB = 0,
  37.                CHORUS
  38.             };
  39.             
  40. enum VARIINDEX {
  41.                ROOM_1 = 0,
  42.                ROOM_2,
  43.                ROOM_3,
  44.                HALL_1,
  45.                HALL_2,
  46.                PLATE,
  47.                DELAY,
  48.                PANNING_DELAY,
  49.  
  50.                CHORUS_1 = 0,
  51.                CHORUS_2,
  52.                CHORUS_3,
  53.                CHORUS_4,
  54.                FEEDBACK_DELAY,
  55.                FLANGER,
  56.                SHORT_DELAY,
  57.                SHORT_DELAY_FB            
  58.             };
  59.  
  60. enum FLAG_OPERATION {
  61.                OPER_FILE,
  62.                OPER_MEMORY
  63.             };
  64.                
  65. typedef struct {
  66.  
  67.    enum SBANK        m_SBankIndex;           /* Follows strictly to the available Synth Emulation available */
  68.    WORD              m_UBankIndex;           /* Valid number are from 1 to 127 */
  69.    WORD              m_InstrIndex;           /* Instrument Index from 0 to 127 */
  70.    
  71.    enum TYPEINDEX    m_TypeIndex;            /* Follows strictly to the available Effects Type available */
  72.    WORD              m_SubIndex;             /* A sub index of the Type Index */
  73.    WORD              m_VariIndex[6];         /* 6 sets of variations! Extendibility thought */
  74.  
  75.    } CParamObject;
  76.  
  77. typedef CParamObject FAR *    LPPARAMOBJECT;
  78. /*
  79.    This CParamObject is usually used when required to pass several indices to the DLL. This happens
  80.    when configuring an effects type, synth emulation or during query session.
  81.    The LPPARAMOBJECT type define a far pointer to the parameter object.
  82. */
  83.  
  84. typedef struct {
  85.  
  86.    DWORD             m_Size;                 /* The size of the buffer attached */
  87.    LPSTR             m_Buffer;               /* The far pointer to the buffer itself */
  88.    DWORD             m_SizeUsed;             /* The number of buffer characters used by DLL */
  89.    WORD              m_Flag;                 /* Scratch Variable */
  90.  
  91.    } CBufferObject;
  92.  
  93. typedef CBufferObject FAR *   LPBUFFEROBJECT;
  94. /*
  95.    The CBufferObject is used to specified a buffer area to the DLL. This buffer area will usually
  96.    be filled with some strings or values. In some occassions, the buffer itself, actually carries
  97.    information to the DLL, like filename etc.
  98.    The LPBUFFEROBJECT type define a far pointer to the buffer object.
  99. */
  100.  
  101. #endif   /* _INDICES_H */
  102.